package sonok.content;

import java.awt.Component;
import java.util.ArrayList;

import javax.swing.AbstractListModel;
import javax.swing.DefaultListModel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.ListModel;

import sonok.gui.GUI_Profile_Edit;
import sonok.gui.GUI_Task_Rollen;
import sonok.gui.GUI_Task_View;

public class Content_PersonInRollOfTask extends Content_Base  {

	public int idPersonerfuelltRolleinAufgabe = 0;
	public int idPerson = 0; // TODO: Personen/Rollen zur Aufgabe ausgeben?
	public int idRolle = 0;
	public int idAufgabe = 0;
	
	public ArrayList<Content_Rolle> Standartrollen = new ArrayList<Content_Rolle>();
	public ArrayList<Content_Rolle> gewaehlteRollen = new ArrayList<Content_Rolle>();
	public String eigeneRolle;
		
	//private String[] StandartRollen_bezeichner;
	//private String[]  gewaehlteRollen_bezeichner;
	
	
	@Override
	public void read(JPanel p) {
		if (p instanceof GUI_Task_Rollen) {
			GUI_Task_Rollen g = (GUI_Task_Rollen) p;
				
			eigeneRolle = g.tf_eigeneRolle.getText();			
			
		}
		if (p instanceof GUI_Task_View) {
			GUI_Task_View g = (GUI_Task_View) p;
		}
		
	}
	@Override
	public void write(JPanel p) {		
		if (p instanceof GUI_Task_Rollen) {
			
			GUI_Task_Rollen g = (GUI_Task_Rollen) p;
			
			final String[] StandartRollen_bezeichner;
			final String[]  gewaehlteRollen_bezeichner;

			int stelle = 0;
			
			//schreibt die Bezeichner der Standartrollen in die Liste
			StandartRollen_bezeichner = new String[Standartrollen.size()];
			for (Content_Rolle cr : Standartrollen){
				StandartRollen_bezeichner[stelle] = cr.bezeichner;
				stelle++;
			}				
			
			g.li_bestehendeRollen.setModel(new AbstractListModel() {
				String[] values = StandartRollen_bezeichner;
				public int getSize() {
					return values.length;
				}
				public Object getElementAt(int index) {
					return values[index];
				}
			});
			
			stelle=0;
			gewaehlteRollen_bezeichner = new String[gewaehlteRollen.size()];	
			for (Content_Rolle cr : gewaehlteRollen){
				gewaehlteRollen_bezeichner[stelle] = cr.bezeichner;
				stelle++;
			}
			
			g.li_gewaehlteRollen.setModel(new AbstractListModel() {
				String[] values = gewaehlteRollen_bezeichner;
				public int getSize() {
					return values.length;
				}
				public Object getElementAt(int index) {
					return values[index];
				}
			});
			
		}
		
		if (p instanceof GUI_Task_View) {
			GUI_Task_View g = (GUI_Task_View) p;
			
		}
		
	}
	@Override
	public String getCaption() {
		return null;
	}
	@Override
	public boolean contains(String... keywords) {
		// TODO Auto-generated method stub
		return false;
	}
	
}
